mexif_tagdb_t mexif_GPS_db[_MEXIF_TAGID_GPS_Count] = 
{
    {     0, L"GPSVersionID", L"GPS tag version" }, // BYTE 4
    {     1, L"GPSLatitudeRef", L"North or South Latitude" }, // ASCII 2
    {     2, L"GPSLatitude", L"Latitude" }, // RATIONAL 3
    {     3, L"GPSLongitudeRef", L"East or West Longitude" }, // ASCII 2
    {     4, L"GPSLongitude", L"Longitude" }, // RATIONAL 3
    {     5, L"GPSAltitudeRef", L"Altitude reference" }, // BYTE 1
    {     6, L"GPSAltitude", L"Altitude" }, // RATIONAL 1
    {     7, L"GPSTimeStamp", L"GPS time (atomic clock)" }, // RATIONAL 3
    {     8, L"GPSSatellites", L"GPS satellites used for measurement" }, // ASCII Any
    {     9, L"GPSStatus", L"GPS receiver status" }, // ASCII 2
    {    10, L"GPSMeasureMode", L"GPS measurement mode" }, // ASCII 2
    {    11, L"GPSDOP", L"Measurement precision" }, // RATIONAL 1
    {    12, L"GPSSpeedRef", L"Speed unit" }, // ASCII 2
    {    13, L"GPSSpeed", L"Speed of GPS receiver" }, // RATIONAL 1
    {    14, L"GPSTrackRef", L"Reference for direction of movement" }, // ASCII 2
    {    15, L"GPSTrack", L"Direction of movement" }, // RATIONAL 1
    {    16, L"GPSImgDirectionRef", L"Reference for direction of image" }, // ASCII 2
    {    17, L"GPSImgDirection", L"Direction of image" }, // RATIONAL 1
    {    18, L"GPSMapDatum", L"Geodetic survey data used" }, // ASCII Any
    {    19, L"GPSDestLatitudeRef", L"Reference for latitude of destination" }, // ASCII 2
    {    20, L"GPSDestLatitude", L"Latitude of destination" }, // RATIONAL 3
    {    21, L"GPSDestLongitudeRef", L"Reference for longitude of destination" }, // ASCII 2
    {    22, L"GPSDestLongitude", L"Longitude of destination" }, // RATIONAL 3
    {    23, L"GPSDestBearingRef", L"Reference for bearing of destination" }, // ASCII 2
    {    24, L"GPSDestBearing", L"Bearing of destination" }, // RATIONAL 1
    {    25, L"GPSDestDistanceRef", L"Reference for distance to destination" }, // ASCII 2
    {    26, L"GPSDestDistance", L"Distance to destination" }, // RATIONAL 1
    {    27, L"GPSProcessingMethod", L"Name of GPS processing method" }, // UNDEFINED Any
    {    28, L"GPSAreaInformation", L"Name of GPS area" }, // UNDEFINED Any
    {    29, L"GPSDateStamp", L"GPS date" }, // ASCII 11
    {    30, L"GPSDifferential", L"GPS differential correction" }, // SHORT 1
};



const mexif_tagdb_t* MEXIF_API mexif_GPS_search( unsigned int tag )
{
    switch( tag )
    {
    case MEXIF_TAGID_GPS_GPSVersionID             : return mexif_GPS_db +  0;
    case MEXIF_TAGID_GPS_GPSLatitudeRef           : return mexif_GPS_db +  1;
    case MEXIF_TAGID_GPS_GPSLatitude              : return mexif_GPS_db +  2;
    case MEXIF_TAGID_GPS_GPSLongitudeRef          : return mexif_GPS_db +  3;
    case MEXIF_TAGID_GPS_GPSLongitude             : return mexif_GPS_db +  4;
    case MEXIF_TAGID_GPS_GPSAltitudeRef           : return mexif_GPS_db +  5;
    case MEXIF_TAGID_GPS_GPSAltitude              : return mexif_GPS_db +  6;
    case MEXIF_TAGID_GPS_GPSTimeStamp             : return mexif_GPS_db +  7;
    case MEXIF_TAGID_GPS_GPSSatellites            : return mexif_GPS_db +  8;
    case MEXIF_TAGID_GPS_GPSStatus                : return mexif_GPS_db +  9;
    case MEXIF_TAGID_GPS_GPSMeasureMode           : return mexif_GPS_db + 10;
    case MEXIF_TAGID_GPS_GPSDOP                   : return mexif_GPS_db + 11;
    case MEXIF_TAGID_GPS_GPSSpeedRef              : return mexif_GPS_db + 12;
    case MEXIF_TAGID_GPS_GPSSpeed                 : return mexif_GPS_db + 13;
    case MEXIF_TAGID_GPS_GPSTrackRef              : return mexif_GPS_db + 14;
    case MEXIF_TAGID_GPS_GPSTrack                 : return mexif_GPS_db + 15;
    case MEXIF_TAGID_GPS_GPSImgDirectionRef       : return mexif_GPS_db + 16;
    case MEXIF_TAGID_GPS_GPSImgDirection          : return mexif_GPS_db + 17;
    case MEXIF_TAGID_GPS_GPSMapDatum              : return mexif_GPS_db + 18;
    case MEXIF_TAGID_GPS_GPSDestLatitudeRef       : return mexif_GPS_db + 19;
    case MEXIF_TAGID_GPS_GPSDestLatitude          : return mexif_GPS_db + 20;
    case MEXIF_TAGID_GPS_GPSDestLongitudeRef      : return mexif_GPS_db + 21;
    case MEXIF_TAGID_GPS_GPSDestLongitude         : return mexif_GPS_db + 22;
    case MEXIF_TAGID_GPS_GPSDestBearingRef        : return mexif_GPS_db + 23;
    case MEXIF_TAGID_GPS_GPSDestBearing           : return mexif_GPS_db + 24;
    case MEXIF_TAGID_GPS_GPSDestDistanceRef       : return mexif_GPS_db + 25;
    case MEXIF_TAGID_GPS_GPSDestDistance          : return mexif_GPS_db + 26;
    case MEXIF_TAGID_GPS_GPSProcessingMethod      : return mexif_GPS_db + 27;
    case MEXIF_TAGID_GPS_GPSAreaInformation       : return mexif_GPS_db + 28;
    case MEXIF_TAGID_GPS_GPSDateStamp             : return mexif_GPS_db + 29;
    case MEXIF_TAGID_GPS_GPSDifferential          : return mexif_GPS_db + 30;
    }
    return 0;
};
